#ifndef SERVER_H
#define SERVER_H
#include <QTcpServer>

class Server : public QTcpServer
{
    Q_OBJECT
public:
    Server(QObject *parent = nullptr);
    // 发送信息到已连接的所有客户机
    void SendData(QByteArray data);
    QString HostAddr;
signals:
    // 通过该信号传递接收到的数据
    void RecvDataSignal(QByteArray data);
    void ConnectedSignal(QTcpSocket *clientSocket);
    void DisconnectedSignal(QTcpSocket *clientSocket);
public slots:
    // 当有新连接时的槽函数
    void NewClient_cb();
    // 当有数据来时的槽函数
    void ReadyReadData_cb();
    void Disconnect_cb(void);

private:
    QList<QTcpSocket *> m_clientList; // 存放客户端socket的容器
};

#endif // SERVER_H
